package com.easylinkin.linkappapi.weather.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.easylinkin.linkappapi.weather.entity.WeatherRecord;

import java.util.Date;
import java.util.List;

/**
 * 天气服务接口
 */
public interface WeatherService extends IService<WeatherRecord> {

    /**
     * 获取所有租户的天气数据并保存
     */
    void fetchAllTenantsWeatherData();

    /**
     * 获取指定位置的天气数据并保存
     * @param longitude 经度
     * @param latitude 纬度
     * @param tenantId 租户ID
     */
    void fetchAndSaveWeather(Double longitude, Double latitude, String tenantId);

    /**
     * 获取租户的历史天气记录
     * @param tenantId 租户ID
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 天气记录列表
     */
    List<WeatherRecord> getHistoryRecords(String tenantId, Date startTime, Date endTime);

    /**
     * 获取租户的最新天气记录
     * @param tenantId 租户ID
     * @return 最新天气记录
     */
    WeatherRecord getLatestRecord(String tenantId);
} 